1. Field of the Invention
The present invention generally relates to data processing systems, and more particularly to systems and methods for generating guidance using aspects of case-based reasoning. In one example, a guidance-seeking user of an interactive system in a particular situation could request, and be provided with, a recommended course of action based on actions performed by previous users of the system in similar situations.
2. Description of the Related Art
Due to the increasing complexity of computer applications and environments, it is becoming increasingly difficult, despite user manuals and online aids, for users to successfully and efficiently achieve their desired goals. That is, users of a given application (e.g., an e-commerce website) often have difficulty determining which steps to take in order to achieve an anticipated outcome. In some cases, users may be completely lost, not knowing how or where to begin their pursuit. In certain situations, users may not be able to navigate through, or even appreciate, all of the possibilities and options that are available. Each of these predicaments may be especially acute for first time and/or inexperienced users.
Typical on-line guidance systems are often ineffective in providing effective guidance and may even exacerbate a user's dilemma. Often, a befuddled user's only option is to ask a more experienced user for guidance. The more experienced user may provide assistance based on his or her previous interactions with the environment. That is, the experienced user, or guide, may provide instructions as to which actions to perform in order to achieve a desired (or reasonable) result, remembering which action or series of actions he or she performed in the past. In this fashion, assistance is provided to the inexperienced user by exploiting the guide's previous experience. The inexperienced user, therefore, profits from the guide's prior experience.
Adapting solutions employed in prior situations to current problems is referred to as case-based reasoning (“CBR”). At its core, CBR is based on the notion that a current problem is often solved using a solution that was successfully used to solve a similar problem in the past. This basic principle can be especially effective when the previous solution is adapted to the circumstances of the current problem.
Case-based reasoning is a cyclical process, typically comprising four main steps: (1) retrieve; (2) reuse; (3) revise; and (4) retain. First, one or more prior cases that are similar to the current problem, or case, are retrieved. A solution suggested by the similar case(s) is then reused and tested for success. Unless the retrieved case is a perfect match to the current problem, the solution is then revised. This revision produces a new case that may be retained for subsequent retrieval. Case-based reasoning may be particularly accurate since all the elements included in the current case may be used to retrieve similar cases and suggested solutions are tested for success. In addition, as the number of cases increases and as solutions are revised, the quality of the suggested solutions improves.
Accordingly, given the ever-increasing complexity of computer systems and environments, it may be beneficial to utilize aspects of CBR as a basis for providing guidance to users of such systems.